Embodiments of the present invention relate to network data transmission, and more specifically, to a gateway and its method of transferring data.
Traditionally, an IP node employs a single IP address and a single MAC address. Some new technologies aimed at the increase of the bandwidth and availability can enable an (either logical or physical) IP node to have a single IP address and multiple MAC addresses. Each MAC address usually corresponds to a physical network interface card (NIC) or egress port. These kinds of nodes are named SIMM-nodes (Single IP address and multiple MAC address).
A server employing the NIC teaming alb/slb mode is an example of SIMM-nodes. NIC teaming binds multiple physical network cards on the same server to a single virtual network card by software; that is, for any external network, this server has only one visible network card. For any application and a network where this server is located, the server has only one network link or only one accessible IP address. FIG. 1 shows a schematic view where packets sent from the SIMM-node server can be sent through different NICs to different target nodes by using one IP address. The solution can increase the network speed on one hand, but can achieve load balancing and fault tolerance between different network cards by teaming on the other hand.
However, a problem arises when receiving data on different subnets. FIG. 2 shows the traffic received by a SIMM-node when the SIMM-node and a target node are in different subnets. Here, the traffic being received is not load balanced. This is because the incoming traffic of the SIMM-node has to traverse a gateway; the gateway knows that the SIMM-node only has one IP address; and moreover, the gateway only knows that this IP address corresponds to one MAC address and one egress port due to the existing ARP mechanism. So the traffic to the SIMM-node is only exported through a fixed egress port, and the SIMM-node will receive such three-layer traffic at only one NIC. In this case, the efficiency of the load balancing for traffic received of the SIMM-node degrades because only one NIC or one egress port is active.